package com.city.service.pub.impl;

import com.city.domain.auth.PubAuth;
import com.city.domain.city.*;
import com.city.domain.economic.*;
import com.city.domain.party.*;
import com.city.domain.pub.*;
import com.city.domain.supervise.*;
import com.city.repository.city.*;
import com.city.repository.economic.EconomicTypeRepository;
import com.city.repository.economic.EnterpriseAffiliationRepository;
import com.city.repository.economic.EnterpriseRegulatoryClassificationRepository;
import com.city.repository.economic.EnterpriseScaleRepository;
import com.city.repository.party.*;
import com.city.repository.pub.*;
import com.city.repository.supervise.ImpCategoryRepository;
import com.city.repository.supervise.ImpLocationRepository;
import com.city.repository.supervise.ImpOrganizationRepository;
import com.city.repository.supervise.ImpThingRepository;
import com.city.service.pub.DeleteService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @deprecation: 全局数据删除入口
 * @dmail: 398521613@qq.com
 * @author: L-H
 * @date: 2018-07-19 8:35
 */
@Service
public class DeleteServiceImpl implements DeleteService {

    @Autowired
    private CityHouseinfoRepository cityHouseinfoRepository;

    @Autowired
    private PubProvinceRepository provinceRepository;

    @Autowired
    private PubCityRepository cityRepository;

    @Autowired
    private PubCountyRepository countyRepository;

    @Autowired
    private PubCountRepository countRepository;

    @Autowired
    private CityTownRepository townRepository;

    @Autowired
    private CityVillageRepository villageRepository;

    @Autowired
    private CityCopnoteMaincontentRepository copnoteMaincontentRepository;

    @Autowired
    private CityCopnoteObjectRepository copnoteObjectRepository;

    @Autowired
    private CityEventCountMethodRepository eventCountMethodRepository;

    @Autowired
    private CityEventSrcnameRepository eventSrcnameRepository;

    @Autowired
    private CityEventTypeRepository eventTypeRepository;

    @Autowired
    private EconomicTypeRepository economicTypeRepository;

    @Autowired
    private EnterpriseAffiliationRepository affiliationRepository;

    @Autowired
    private EnterpriseRegulatoryClassificationRepository classificationRepository;

    @Autowired
    private EnterpriseScaleRepository scaleRepository;

    @Autowired
    private PubArticleTypeRepository articleTypeRepository;

    @Autowired
    private PartyOrelationshipRepository orelationshipRepository;

    @Autowired
    private PartyFahuRepository fahu;

    @Autowired
    private PartyFlowoutRepository partyFlowoutRepository;

    @Autowired
    private PartyFabroadRepository partyFabroadRepository;

    @Autowired
    private PartyFaboradFamilyRepository partyFaboradFamilyRepository;

    @Autowired
    private ReportPersonRepository reportPersonRepository;

    @Autowired
    private ReportGroupRepository reportGroupRepository;

    @Autowired
    private CityCopnotePersonRepository copnotePersonRepository;

    @Autowired
    private PubFilepathRepository filepathRepository;

    @Autowired
    private CityEventRepository eventRepository;

    @Autowired
    private PubHouseinfoRepository pubHouseinfoRepository;

    @Autowired
    private ImpOrganizationRepository impOrganizationRepository;

    @Autowired
    private ImpCategoryRepository impCategoryRepository;

    @Autowired
    private ImpThingRepository impThingRepository;

    @Autowired
    private ImpLocationRepository impLocationRepository;

    @Override
    public void delete(CityVillage cityVillage) {
        villageRepository.delete(cityVillage);
    }

    @Override
    public void delete(CityTown cityTown) {
        townRepository.delete(cityTown);
    }

    @Override
    public void delete(CityCopnoteObject cityCopnoteObject) {
        copnoteObjectRepository.delete(cityCopnoteObject);
    }

    @Override
    public void delete(CityCopnoteMaincontent cityCopnoteMaincontent) {
        copnoteMaincontentRepository.delete(cityCopnoteMaincontent);
    }

    @Override
    public void delete(CityCopnotePerson cityCopnotePerson) {
        copnotePersonRepository.delete(cityCopnotePerson);
    }

    @Override
    public void delete(CityEvent cityEvent) {
        eventRepository.delete(cityEvent);
    }

    @Override
    public void delete(CityEventCountMethod cityEventCountMethod) {
        eventCountMethodRepository.delete(cityEventCountMethod);
    }

    @Override
    public void delete(CityEventSrcname cityEventSrcname) {
        eventSrcnameRepository.delete(cityEventSrcname);
    }

    @Override
    public void delete(CityEventStatus cityEventStatus) {

    }

    @Override
    public void delete(CityEventType cityEventType) {
        eventTypeRepository.delete(cityEventType);
    }

    @Override
    public void delete(CityHouseinfo cityHouseinfo) {
        cityHouseinfoRepository.delete(cityHouseinfo);
    }

    @Override
    public void delete(EconomicType economicType) {
        economicTypeRepository.delete(economicType);
    }

    @Override
    public void delete(EnterpriseAffiliation enterpriseAffiliation) {
        affiliationRepository.delete(enterpriseAffiliation);
    }

    @Override
    public void delete(Enterpriseinfo enterpriseinfo) {

    }

    @Override
    public void delete(EnterpriseManagementAgency enterpriseManagementAgency) {

    }

    @Override
    public void delete(EnterprisePersoncount enterprisePersoncount) {

    }

    @Override
    public void delete(EnterpriseRegulatoryClassification enterpriseRegulatoryClassification) {
        classificationRepository.delete(enterpriseRegulatoryClassification);
    }

    @Override
    public void delete(EnterpriseScale enterpriseScale) {
        scaleRepository.delete(enterpriseScale);
    }

    @Override
    public void delete(EnterpriseUmagency enterpriseUmagency) {

    }

    @Override
    public void delete(EnterpriseUmagencyPerson enterpriseUmagencyPerson) {

    }

    @Override
    public void delete(PartyApply partyApply) {

    }

    @Override
    public void delete(PartyCadreLevel partyCadreLevel) {

    }

    /**
     **
      *@author:WY
      *@date: 2018/7/20 21:20
      *@description:保存家庭信息
     *
     * @param partyFaboradFamily
     */
    @Override
    public void delete(PartyFaboradFamily partyFaboradFamily) {
        partyFaboradFamilyRepository.delete(partyFaboradFamily);
    }


    /**
     **
      *@author:WY
      *@date: 2018/7/20 21:19
      *@description:保存时出国信息
     *
     * @param partyFabroad
     */
    @Override
    public void delete(PartyFabroad partyFabroad) {
        partyFabroadRepository.delete(partyFabroad);
    }

    /**
     **
      *@author:
      *@date: 2018/7/19 11:36
      *@description:保存流动信息
     *
     * @param partyFahu
     */
    @Override
    public void delete(PartyFahu partyFahu) {
        fahu.delete(partyFahu);
    }

    /**
     * *
      *@author:WY
      *@date: 2018/7/19 14:16
      *@description:流出保存方法
     *
     * @param partyFlowout
     */
    @Override
    public void delete(PartyFlowout partyFlowout) {
        partyFlowoutRepository.delete(partyFlowout);
    }

    @Override
    public void delete(PartyFlowReason partyFlowReason) {

    }

    @Override
    public void delete(PartyFlowType partyFlowType) {

    }


    /**
     **
      *@author:WY
      *@date: 2018/7/19 11:37
      *@description:保存关系转入转出申请
     *
     * @param partyOrelationship
     */
    @Override
    public void delete(PartyOrelationship partyOrelationship) {
        orelationshipRepository.delete(partyOrelationship);
    }

    @Override
    public void delete(PartyVideo partyVideo) {

    }

    @Override
    public void delete(PartyTalentAppeal partyTalentAppeal) {

    }

    @Override
    public void delete(PartyVideoType partyVideoType) {

    }

    @Override
    public void delete(PubArticle pubArticle) {

    }

    @Override
    public void delete(PubArticleType pubArticleType) {
        articleTypeRepository.delete(pubArticleType);
    }



    @Override
    public void delete(PubCity pubCity) {
        cityRepository.delete(pubCity);
    }

    @Override
    public void delete(PubCounty pubCounty) {
        countyRepository.delete(pubCounty);
    }

    @Override
    public void delete(PubEducationDegree pubEducationDegree) {

    }

    @Override
    public void delete(PubFamilyRelationship pubFamilyRelationship) {

    }

    @Override
    public void delete(PubFilepath pubFilepath) {
        filepathRepository.delete(pubFilepath);
    }

    @Override
    public void delete(PubFiletype pubFiletype) {

    }

    @Override
    public void delete(PubHouseFrom pubHouseFrom) {

    }

    @Override
    public void delete(PubHouseinfo pubHouseinfo) {
        pubHouseinfoRepository.delete(pubHouseinfo);
    }

    @Override
    public void delete(PubHouseStructure pubHouseStructure) {

    }

    @Override
    public void delete(PubHouseUse pubHouseUse) {

    }

    @Override
    public void delete(PubHouseUsebuild pubHouseUsebuild) {

    }

    @Override
    public void delete(PubOccupation pubOccupation) {

    }

    @Override
    public void delete(PubPoliticalOutlook pubPoliticalOutlook) {

    }

    @Override
    public void delete(PubProvince pubProvince) {
        provinceRepository.delete(pubProvince);
    }

    @Override
    public void delete(PubUser pubUser) {

    }

    @Override
    public void delete(PubCount pubCount) {
        countRepository.delete(pubCount);
    }

    @Override
    public void delete(PubIndustryCategory pubIndustryCategory) {

    }

    @Override
    public void delete(PubKeyPerson pubKeyPerson) {

    }

    @Override
    public void delete(PubKeyTrajectory pubKeyTrajectory) {

    }

    @Override
    public void delete(PubLandCoucher pubLandCoucher) {

    }

    @Override
    public void delete(PubLandGet pubLandGet) {

    }

    @Override
    public void delete(PubNationCategory pubNationCategory) {

    }

    @Override
    public void delete(ReportPerson reportPerson) {
        reportPersonRepository.delete(reportPerson);
    }

    @Override
    public void delete(ReportGroup reportGroup) {
        reportGroupRepository.delete(reportGroup);
    }


    @Override
    public void delete(ImpLocation impLocation) {
        impLocationRepository.delete(impLocation);
    }

    @Override
    public void delete(ImpCategory impCategory) {
        impCategoryRepository.delete(impCategory);
    }

    @Override
    public void delete(ImpOrganization impOrganization) {
        impOrganizationRepository.delete(impOrganization);
    }

    @Override
    public void delete(ImpThing impThing) {
        impThingRepository.delete(impThing);
    }
}
